package com.cskaoyan._04oop1._01demo;

/**
 * @author Macro_Ray
 * @since 2024/3/6 20:15
 */
// 类
// 用来描述一类事物的类，叫做 Javabean类，是不写main方法的
// 以前编写main方法的类，叫做测试类
// 可以在测试类中创建Javabean类的对象并进行赋值调用
// public class 类名{
//      1. 成员变量
//      2. 成员方法
// }

//  类名首字母建议大写，需要见名知意，驼峰模式。
//  一个java文件中可以定义多个class类，且只能一个类是public修饰，而且public修饰的类名必须成为代码文件名。
//  实际开发中建议还是一个文件定义一个class类。
//  成员变量的完整定义格式是: 修饰符 数据类型 变量名称=初始化值;
//  一般无需指定初始化值，存在默认值，
public class _03GirlFriend {
    // 属性
/*    String name;
    int age;
    String gender;*/

    // private关键字 — 私有化
    private String name;
    private int age;
    private String gender;

    // 针对于每一个私有化的成员变量，都要提供get和set方法，过滤数据
    // set方法：给成员变量赋值
    // get方法：对外提供成员变量的值

    public void setName(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }


    public void setAge(int age) {
        if (age >= 18 && age <= 50) {
            this.age = age;
        } else {
            System.out.println("非法参数");
        }
    }
    public int getAge() {
        return age;
    }


    public void setGender(String gender) {
        this.gender = gender;
    }
    public String getGender() {
        return gender;
    }


    // 行为
    public void sleep() {
        System.out.println("女友正在睡觉");
    }

    public void eat() {
        System.out.println("女友正在吃饭");
    }
}
